Vizualizacija kitty mreže

Napokon smo stigli do (veganskog?) "mesa" radionice! Ukratko, vizualizirat ćemo kitty mrežu preko ulaza u nju koji jako aktiviraju određene njene dijelove.

Definicije i importovi

Učitavamo tri checkpointa: jedan na samom početku prije ikakvog treniranja, start, jedan nakon prve epohe early, i jedan na, praktički, kraju treniranja, late.

Prolaz jedne slike

Start

Late

Lucent vizualizacija

Lucent je PyTorch library nastao na Tensorflow library Lucid, kojeg su razvili ljudi iz Google Braina za circuits research. On traži input koji "maksimizira" zadani channel u konvolucijskoj mreži, odnosno time nalazi onakav input koji, u određenom smislu, taj channel traži.

Sloj po sloj—

Proći ćemo kroz mrežu sloj po sloj, uspoređujući u svakom koraku razliku između rezultata za start mrežu (prije početka treniranja), early mrežu (nakon prve epohe) i late mrežu (nakon skoro punih 8 epoha).

Start, 1.

Early, 1.

Late, 1.

Start, 2.

Early, 2.

Late, 2.

Start, 3.

Early, 3.

Late, 3.

Kombinacije!

Moguće je tražiti input koji istodobno maksimizira dva ili više channela.

Captum vizualizacija

Ponavljamo praktički iste stvari prije, samo koristeći captum paket, koji na različite načine traži iste stvari.

Start, 1.

Early, 1.

Late, 1.

Start, 2.

Early, 2.

Late, 2.

Start, 3.

Early, 3.

Late, 3.

Start, 4.

Early, 4.

Late, 4.